/*
 *    Copyright (c) 2018-2025, lengleng All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 * Neither the name of the pig4cloud.com developer nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 * Author: lengleng (wangiegie@gmail.com)
 */

import request from '@/axios/axios'

export function fetchList(query) {
  return request({
    url: '/admin/user/page',
    method: 'get',
    params: query
  })
}

export function addObj(obj) {
  return request({
    url: '/admin/user',
    method: 'post',
    data: obj
  })
}

export function getObj(id) {
  return request({
    url: '/admin/user/' + id,
    method: 'get'
  })
}

export function delObj(id) {
  return request({
    url: '/admin/user/' + id,
    method: 'delete'
  })
}

export function putObj(obj) {
  return request({
    url: '/admin/user',
    method: 'put',
    data: obj
  })
}

export function getDetails(obj) {
  return request({
    url: '/admin/user/details/' + obj,
    method: 'get'
  })
}


export function getDetailsByPhone(obj) {
  return request({
    url: '/admin/user/detailsByPhone/' + obj,
    method: 'get'
  })
}

// 更改个人信息
export function editInfo(obj) {
  return request({
    url: '/admin/user/edit',
    method: 'put',
    data: obj
  })
}

// 启用/禁用
export function lockFlag(obj) {
  return request({
    url: '/admin/user/lock-flag',
    method: 'put',
    data: obj
  })
}

// 找回密码
// export function modifyPassword(obj) {
//   return request({
//     url: '/admin/user/password',
//     method: 'put',
//     data: obj
//   })
// }
export function modifyPassword(obj) {
  return request({
    url: '/admin/user/email/change/password',
    method: 'put',
    data: obj
  })
}

// 查询用户列表
export function getUserList(query) {
  return request({
    url: '/admin/user/page/list',
    method: 'get',
    params: query
  })
}

// 发送邮箱验证码
export function emailCode(obj) {
  return request({
    url: '/admin/user/email/code',
    method: 'get',
    params: obj
  })
}

// 邮箱注册
export function register(obj) {
  return request({
    url: '/admin/user/email/register',
    method: 'post',
    data: obj
  })
}

// 个人中心修改密码或者名字
export function infoModifyPassword(obj) {
  return request({
    url: '/admin/user/change/password/or/name',
    method: 'put',
    data: obj
  })
}
